<?php
/*
    OpenLib
    Copyright (C) 2011  Michael Gukov, Pham Thi Thuy Duong

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/


namespace Sun\Html;

interface IContainer
{
    function Get($name);
    function Fetch($path);
    function First();
    function Last();
    function Add(IComponent $item, $name = null);
    function AddFirst(IComponent $item, $name = null);
    function AddRange(array $items);
    function InsertAfter($after, IComponent $item, $name = null);
    function Replace($first, IComponent $second);
    function Remove($name);
    function Contains($name);
    function Count();

    function __list();
}